<?php

	/**
	 * HTML enumerations
	 * @package Enums
	 */

    /**
     * Defines the HTML input types
     * 
     * @package Helpers
     * @author @author Anton Perkin [anton.perkin@gmail.com]
     * @version 1.0
     *
     */
    class InputType extends Enum 
	{
	    
	    /* HTML4 FORM INPUT TYPES */
	    
	    /**
		 * Text type
		 */
		const Text = 'text';
		
	    /**
		 * Password type
		 */
		const Password = 'password';
		
	    /**
		 * Radio type
		 */
		const Radio = 'radio';
		
	    /**
		 * Checkbox type
		 */
		const Checkbox = 'checkbox';
		
	    /**
		 * Submit type
		 */
		const Submit = 'submit';

	    /**
		 * Reset type
		 */
		const Reset = 'reset';
		
	    /**
		 * Button type
		 */
		const Button = 'button';
		
	    /**
		 * File type
		 */
		const File = 'file';
		
	    /**
		 * Hidden type
		 */
		const Hidden = 'hidden';
			
	    /**
		 * Image type
		 */
		const Image = 'image';
		
		
		/* HTML5 TYPES */

	    /**
		 * Email type
		 */
		const Email = 'email';
		
	    /**
		 * Url type
		 */
		const Url = 'url';
		
	    /**
		 * Number type
		 */
		const Number = 'number';
		
	    /**
		 * Range type
		 */
		const Range = 'range';
		
	    /**
		 * Date type
		 */
		const Date = 'date pickers';
		
	    /**
		 * Search type
		 */
		const Search = 'search';
		
	    /**
		 * Color type
		 */
		const Color = 'color';
		
	}    

    /**
     * Defines the access types for input fields
     * 
     * @package Helpers
     * @version 1.0
     * @author @author Anton Perkin [anton.perkin@gmail.com]
     *
     */
    class AccessType extends Enum 
	{
	    
	    /**
		 * Editable, present in the form post back
		 */
		const Full = '';
		
	    /**
		 * Read only, but present in the form post back
		 */
		const Readonly = 'readonly';
		
	    /**
		 * Read only, not present in the form post back
		 */
		const Disabled = 'disabled';
		
	}    	
	
	/**
     * Defines the HTML form field block options
     * 
     * @package Helpers
     * @version 1.0
     * @author @author Anton Perkin [anton.perkin@gmail.com]
     *
     */
    class FieldOption extends Enum 
	{
	    
	    /**
		 * Label option
		 */
		const Label = 'label';
		
	    /**
		 * Comment option
		 */
		const Comment = 'comment';
		
	    /**
		 * Error option
		 */
		const Error = 'error';
		
	}	
	
	/**
     * Defines the HTML form elements
     * 
     * @package Helpers
     * @version 1.0
     * @author @author Anton Perkin [anton.perkin@gmail.com]
     *
     */
    class FormElement extends Enum 
	{
	    
	    /**
		 * Input element
		 */
		const Input = 'input';
		
	    /**
		 * Textarea element
		 */
		const Textarea = 'textarea';
		
	    /**
		 * Select element
		 */
		const Select = 'select';
		
		/**
		 * Text element
		 * @var string
		 */
		const Text = 'text';
	}	
	
	/**
	 * Defines the HTML form method
	 * 
	 * @package Helpers
	 * @version 1.0
	 * @author Anton Perkin [anton.perkin@gmail.com]
	 *
	 */
	class FormMethod extends Enum 
	{
	    
	    /**
		 * Post method
		 */
		const Post = 'POST';
		
	    /**
		 * Get method
		 */
		const Get = 'GET';
	
	    /**
		 * AJAX method
		 */
		const AJAX = 'AJAX';
		
	}	
	
?>